<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue生命周期</title>
</head>

<body>
    <div id="app">
        <button v-on:click="count--">-</button>
        <span>{{count}}</span>
        <button @click="count++">+</button>
    </div>
 
    <!-- 引入包-->
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
    <script>
        const app = new Vue({
            el: '#app',
            data: {
                count:100
            },
            //1.创建阶段（准备数据）
            beforeCreate(){
                console.log('beforeCreate 响应式数据准备好之前');
            },
            created(){
                console.log('created 响应式数据准备好之后');
                //this.数据名 = 请求回来的数据
                //可以开始发送初始化渲染的请求了
            },

            //2.挂载阶段（渲染模板）
            beforeMount(){
                console.log('beforeMount 模板渲染之前');
            },
            mounted(){
                console.log('mounted 模板渲染之后');
            },

            //3.更新阶段（修改数据 -> 更新视图）
            beforeUpdate(){
                console.log('beforeUpdate 数据修改了 视图还没更新');
            },
            update(){
                console.log('beforeUpdate 数据修改了 视图已经更新');
            },

            //4.卸载阶段
            beforeDestroy(){
                console.log('beforeDestroy 卸载前');
            },
            destroyed(){
                console.log('destroyed 卸载后');
            }
        })
    </script>
</body>

</html>